package model

type IcDemand struct {
	// 需求唯一标识（主键）
	Pkid int64 `json:"pkid" gorm:"column:pkid"`

	// 需求类型（如：功能需求、数据需求等）
	DemandType string `json:"demand_type" gorm:"column:demand_type"`

	// 需求名称/标题（非空）
	DemandName string `json:"demand_name" gorm:"column:demand_name"`

	// 需求应用场景描述
	DemandScenario string `json:"demand_scenario" gorm:"column:demand_scenario"`

	// 需求搜索关键词
	DemandKeywords string `json:"demand_keywords" gorm:"column:demand_keywords"`

	// 需求详细描述
	DemandDescription string `json:"demand_description" gorm:"column:demand_description"`

	// 预算价格上限
	BudgetUpperLimit float64 `json:"budget_upper_limit" gorm:"column:budget_upper_limit"`

	// 预算价格下限
	BudgetLowerLimit float64 `json:"budget_lower_limit" gorm:"column:budget_lower_limit"`

	// 需求截止时间
	DeadlineTime string `json:"deadline_time" gorm:"column:deadline_time"` // 使用 string 类型表示日期

	// 需求发布时间（默认当前时间）
	PublishTime string `json:"publish_time" gorm:"column:publish_time"` // 使用 string 类型表示日期

	// 需求限制条件信息
	RestrictionInfo string `json:"restriction_info" gorm:"column:restriction_info"`

	// 需求发布者ID
	UserId string `json:"user_id" gorm:"column:user_id"`

	// 需求发布者名称
	UserName string `json:"user_name" gorm:"column:user_name"`

	// 需求发布者部门
	Department string `json:"department" gorm:"column:department"`

	// 需求状态："暂无认领"、"竞价中"、"已结项"
	Status int `json:"status" gorm:"column:status"`

	// 需求最终价格
	FinalPrice float64 `json:"final_price" gorm:"column:final_price"`

	// 需求发布者手机号
	BuyerPhone string `json:"buyer_phone" gorm:"column:buyer_phone"`

	// 需求认领者手机号
	SellerPhone string `json:"seller_phone" gorm:"column:seller_phone"`

	// 认领者姓名
	SellerName string `json:"seller_name" gorm:"column:seller_name"`

	// 认领者部门
	SellerDepartment string `json:"seller_department" gorm:"column:seller_department"`

	// 交易方式
	TransactionMethod string `json:"transaction_method" gorm:"column:transaction_method"`

	// 卖方id
	SellerId string `json:"seller_id" gorm:"column:seller_id"`

	// 关联的产品id
	UpperLevelProductId int64 `json:"upper_level_product_id" gorm:"column:upper_level_product_id"`

	// 沟通时间
	CommunicateTime string `json:"communicate_time" gorm:"column:communicate_time"` // 使用 string 类型表示日期

	// 需求取消原因
	CancelReason string `json:"cancel_reason" gorm:"column:cancel_reason"`
}

func (IcDemand) TableName() string {
	return "ic_demand_list"
}
